#pragma once

//----- Number Based Types -----//
typedef signed __int8 s8;
typedef signed __int16 s16;
typedef signed __int32 s32;
typedef signed __int64 s64;

typedef unsigned __int8 u8;
typedef unsigned __int16 u16;
typedef unsigned __int32 u32;
typedef unsigned __int64 u64;

typedef unsigned char byte;

//----- String Based Types -----//
typedef char * str;
typedef s16 strsize;

//----- Void Based Types -----//
typedef void* voidptr;

//all of the following effort for.... nothing xD
#ifndef null
	#ifdef NULL
		#define null NULL
	#else
		#ifdef __cplusplus
			#define null    0
		#else
			#define null    ((void *)0)
		#endif
	#endif
#endif